JSON (JavaScript Object Notation) হল একটি জনপ্রিয় ডেটা বিনিময় ফরম্যাট যা খুবই হালকা ও সহজ। এটি সাধারণত ওয়েব অ্যাপ্লিকেশন ও সার্ভার-মডেল অ্যাপ্লিকেশনগুলিতে ডেটা ট্রান্সফারের জন্য ব্যবহৃত হয়। Java তে JSON ডেটা পার্স করা সাধারণত JSON লাইব্রেরি ব্যবহার করে করা হয়। কিছু জনপ্রিয় লাইব্রেরি হলো Jackson, Gson, এবং org.json। এই লাইব্রেরি গুলোর মাধ্যমে আপনি JSON ডেটা অ্যাপ্লিকেশনে ইনপুট হিসেবে গ্রহণ করে Java অবজেক্টে পরিণত করতে পারেন, যা পরে ব্যবহার করা সহজ।
JSON Data পার্স করার প্রক্রিয়া
১. Jackson লাইব্রেরি ব্যবহার করে JSON পার্স করা
Jackson একটি জনপ্রিয় JSON পার্সিং লাইব্রেরি যা JSON ডেটা পার্স করার জন্য খুবই দ্রুত এবং সহজ। Jackson-এর প্রধান উপাদান দুটি:
- ObjectMapper: এটি JSON ডেটা Java অবজেক্টে রূপান্তর (deserialize) এবং Java অবজেক্ট থেকে JSON এ রূপান্তর (serialize) করতে ব্যবহৃত হয়।
Jackson লাইব্রেরি ইনস্টল করা
প্রথমে Maven বা Gradle ব্যবহার করে Jackson লাইব্রেরি ইনস্টল করতে হবে।
Maven Dependency:
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.13.0</version>
</dependency>
উদাহরণ: JSON ডেটা পার্স করা Jackson দিয়ে
import com.fasterxml.jackson.databind.ObjectMapper;
class Person {
private String name;
private int age;
// Getter and Setter methods
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class JacksonExample {
public static void main(String[] args) {
try {
// JSON String
String json = "{\"name\":\"John\", \"age\":30}";
// Create an ObjectMapper instance
ObjectMapper objectMapper = new ObjectMapper();
// Parse JSON into Java object (Person)
Person person = objectMapper.readValue(json, Person.class);
// Print the object data
System.out.println("Name: " + person.getName());
System.out.println("Age: " + person.getAge());
} catch (Exception e) {
e.printStackTrace();
}
}
}
এখানে:
ObjectMapper.readValue()মেথডটি JSON ডেটাকে Java অবজেক্টে রূপান্তরিত করে।Personক্লাসে থাকা getter এবং setter মেথডের মাধ্যমে JSON ডেটার মান অ্যাক্সেস করা হয়।
২. Gson লাইব্রেরি ব্যবহার করে JSON পার্স করা
Gson একটি Google কর্তৃক ডেভেলপকৃত JSON লাইব্রেরি যা JSON ডেটাকে Java অবজেক্টে রূপান্তর এবং Java অবজেক্টকে JSON এ রূপান্তর করতে ব্যবহৃত হয়।
Gson লাইব্রেরি ইনস্টল করা
Maven Dependency:
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.8</version>
</dependency>
উদাহরণ: JSON ডেটা পার্স করা Gson দিয়ে
import com.google.gson.Gson;
class Person {
private String name;
private int age;
// Getter and Setter methods
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
public class GsonExample {
public static void main(String[] args) {
// JSON String
String json = "{\"name\":\"John\", \"age\":30}";
// Create a Gson object
Gson gson = new Gson();
// Convert JSON string to Java object
Person person = gson.fromJson(json, Person.class);
// Print the object data
System.out.println("Name: " + person.getName());
System.out.println("Age: " + person.getAge());
}
}
এখানে:
gson.fromJson()মেথড JSON ডেটাকে Java অবজেক্টে রূপান্তরিত করে।Personক্লাসে থাকা getter এবং setter মেথডের মাধ্যমে JSON ডেটার মান অ্যাক্সেস করা হয়।
৩. org.json লাইব্রেরি ব্যবহার করে JSON পার্স করা
org.json লাইব্রেরি একটি ছোট এবং জনপ্রিয় লাইব্রেরি যা JSON পার্সিং এবং ম্যানিপুলেশন করতে ব্যবহৃত হয়।
org.json লাইব্রেরি ইনস্টল করা
Maven Dependency:
<dependency>
<groupId>org.json</groupId>
<artifactId>json</artifactId>
<version>20210307</version>
</dependency>
উদাহরণ: JSON ডেটা পার্স করা org.json দিয়ে
import org.json.JSONObject;
public class JsonOrgExample {
public static void main(String[] args) {
// JSON String
String json = "{\"name\":\"John\", \"age\":30}";
// Create a JSONObject from the string
JSONObject jsonObject = new JSONObject(json);
// Access the values from the JSON object
String name = jsonObject.getString("name");
int age = jsonObject.getInt("age");
// Print the values
System.out.println("Name: " + name);
System.out.println("Age: " + age);
}
}
এখানে:
JSONObjectক্লাস JSON ডেটা প্যার্স করতে ব্যবহৃত হয়।getString()এবংgetInt()মেথডের মাধ্যমে JSON ডেটার মান অ্যাক্সেস করা হয়।
সারাংশ
Java তে JSON ডেটা পার্স করার জন্য আপনি Jackson, Gson, অথবা org.json লাইব্রেরি ব্যবহার করতে পারেন। প্রত্যেকটি লাইব্রেরি JSON ডেটাকে Java অবজেক্টে রূপান্তর করতে সহায়তা করে এবং JSON ডেটাকে Java অবজেক্টে কাজ করার জন্য একটি উপযুক্ত এবং দ্রুত উপায় প্রদান করে। এগুলোর মধ্যে Jackson এবং Gson সবচেয়ে বেশি ব্যবহৃত এবং আধুনিক লাইব্রেরি, তবে org.json সহজ এবং হালকা লাইব্রেরি হিসেবে কাজ করতে পারে।
Read more